/**
 * Created whit IntelliJ IDEA.
 * Description：
 * User：ZHONGCHEN
 * Date:2022-02-13
 * Time:11:30
 */
/**
 * 1189. “气球” 的最大数量
 * 给你一个字符串 text，你需要使用 text 中的字母来拼凑尽可能多的单词 "balloon"（气球）。
 * 字符串 text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词 "balloon"。
 **/
public class TestDemo {
    public int maxNumberOfBalloons(String text) {
        //balloon中有五个单词
        int[] num = new int[5];
        //遍历数组找出五个单词分别出现的次数
        for (int i = 0; i < text.length(); i++) {
            char c = text.charAt(i);
            if (c == 'b') {
                num[0]++;
            }
            if (c == 'a') {
                num[1]++;
            }
            if (c == 'l') {
                num[2]++;
            }
            if (c == 'o') {
                num[3]++;
            }
            if (c == 'n') {
                num[4]++;
            }
        }
        //把'l'和'o'的次数除以2 因为一个单词中要用到两个'l' 'o';
        num[2] = num[2]/2;
        num[3] = num[3]/2;
        int ans = Integer.MAX_VALUE;
        //求数组中的最小值就是能凑成ballloon的个数
        for (int i = 0; i < num.length; i++) {
            ans = Math.min(ans,num[i]);
        }
        return ans;
    }
}
